<?php
class Field
{
	protected $iId = null;

	protected $iRowId = null;
	
	protected $sValue = null;
	
	protected $aTransformations = array();
	
	public function doTransformations()
	{
		foreach ($this->aTransformations as $aTransformation)
		{
			$sClass = $aTransformation['class'];
			$sMethod = $aTransformation['method'];
			
			// Dynamischer Klassen und Funktionsaufruf
			$oClass = new $sClass();
			$this->Value = $oClass->$sMethod($this->sValue);
		}
	}
	
	public function setValue($sValue)
	{
		$this->sValue = $sValue;
	}
	
	public function getValue()
	{
		return $this->sValue;
	}
	
	public function addTransformation($oTransformation)
	{
		$this->aTransformations[] = $oTransformation;
	}

	public function moveTransformation($oTransformation, $sDirection, $iMove)
	{
		// Hier muss die Logik rein, die die Positionen von Transformationen tauscht, sodass man die 
		// Reihenfolge der Transformationen ändern kann
	}
	
	
}